package cn.yours.web.mapper;


import cn.yours.web.pojo.dto.AdminDTO;
import cn.yours.web.pojo.entity.Admin;
import com.github.pagehelper.Page;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

/**
 * 管理员Mapper接口
 * 
 * @author ruoyi
 * @date 2024-06-05
 */
@Mapper
public interface AdminMapper 
{
    /**
     * 查询管理员
     * 
     * @param id 管理员主键
     * @return 管理员
     */
    public Admin selectAdminById(Long id);

    /**
     * 查询管理员列表
     * 
     * @param
     * @return 管理员集合
     */
    public Page<Admin> selectAdminList(AdminDTO adminDTO);

    /**
     * 新增管理员
     * 
     * @param admin 管理员
     * @return 结果
     */
    public int insertAdmin(Admin admin);

    /**
     * 修改管理员
     * 
     * @param admin 管理员
     * @return 结果
     */
    public int updateAdmin(Admin admin);

    /**
     * 删除管理员
     * 
     * @param id 管理员主键
     * @return 结果
     */
    public int deleteAdminById(Long id);

    /**
     * 批量删除管理员
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteAdminByIds(Long[] ids);

    /**
     * 根据用户名查询管理员用户
     */
    public Admin getAdminByUsername(String username);

    /**
     * 根据用户名和身份证信息查找用户
     */
    public Admin getAdminByUsernameAndIdCard(AdminDTO adminDTO);

    void updatePwd(AdminDTO adminDTO);
}
